#include <aos/aos.h>
#include "aos/kernel.h"
#include "app_main.h"

#include "board_config.h"
#include "drv/gpio_pin.h"
#include <drv/pin.h>
#include <aos/debug.h>

#define TAG "APP_BUTTON"

static csi_gpio_pin_t button;
extern aos_sem_t weather_sem;


static void button_task(void *argv)
{
	while(1){
		if(GPIO_PIN_LOW == csi_gpio_pin_read(&button)) {//持续按键置标志
			LOGD(TAG, "push down the key1\r\n ");
			aos_sem_signal(&weather_sem);
		} 
		aos_msleep(700);
	}
	
}

static void button_start(void)
{
    aos_task_t task;
    if (aos_task_new_ext(&task, "button", button_task, NULL, 1024, AOS_DEFAULT_APP_PRI + 3) != 0) {
        return;
    }
    LOGD(TAG, "creat task:button successful\r\n ");
    return;
}

void app_button_init(void)
{
    LOGD(TAG, "app_button_init\r\n ");
    csi_pin_set_mux(PA11, PIN_FUNC_GPIO);
    csi_gpio_pin_init(&button, PA11);
    csi_gpio_pin_dir(&button, GPIO_DIRECTION_INPUT);

	button_start();

}